<!-- 
    确定需求：
        1.滚动条滚动超过临界点，顶部通栏显示，否则隐藏
        2.滚动条滚动超过临界点，回到顶部按钮显示，否则隐藏
        3.点击回到顶部按钮，滚动条回到顶部
    布局结构：
        1.需要一个顶部通栏标签和一个回到顶部标签
        2.让页面超过浏览器可视窗口高度
        3.设置顶部通栏样式，默认是在超出页面的
        4.设置回到顶部按钮样式，默认是在隐藏的
    代码逻辑：
        1.给浏览器绑定滚动事件，实时获取浏览器卷去的高度
        2.判断卷去的高度决定隐藏还是显示
        3.给回到顶部按钮绑定点击事件
 -->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        body{
            height: 3000px;
        }
        .header{
            width: 100%;
            height: 80px;
            display: flex;
            justify-content: center;
            align-items: center;
            font-size: 30px;
            color: #fff;
            background-color: skyblue;

            transition: top .5s linear;
            
            position: fixed;
            top: -80px;
            left: 0;
        }
        .goTop{
            width: 50px;
            height: 50px;
            background-color: pink;
            font-size: 20px;
            text-align: center;
            line-height: 25px;
            color: #fff;

            position: fixed;
            bottom: 50px;
            right: 50px;

            display: none;
        }
    </style>
</head>
<body>
    <div class="header">顶部通栏</div>
    <div class="goTop">回到顶部</div>

    <script>
        // 1.获取元素
        var header = document.querySelector('.header')
        var goTop = document.querySelector('.goTop')

        // 2.绑定滚动事件
        window.onscroll = function(){
            // 2-1.获取浏览器卷去的高度
            var height = document.documentElement.scrollTop || document.body.scrollTop

            // 2-2.判断卷去的高度
            if(height >= 300){
                // 显示
                header.style.top = '0px'
                goTop.style.display = 'block'
            }else{
                // 隐藏
                header.style.top = '-80px'
                goTop.style.display = 'none'
            }
        }

        // 3.绑定点击事件
        goTop.onclick = function(){
            // 3-1.让页面滚动回到顶部
            window.scrollTo({
                top:0,
                behavior:'smooth'
            })
        }
    </script>
</body>
</html>